﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using AcadPos.Entity;
using System.Web.Security;

namespace AcadPosApp.Seguranca
{
    public partial class RecuperarSenha : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void PasswordRecovery1_SendingMail(object sender, MailMessageEventArgs e)
        {
            try
            {
                e.Cancel = true;
                string msg = string.Empty;
                MembershipUser user = Membership.GetUser(PasswordRecovery1.UserName, false);
                string pSenha = TrustX.Security.Usuario.GerarSenhaAutomatico(8, 1);
                user.ChangePassword(user.ResetPassword(), pSenha);
                Membership.UpdateUser(user);
                string corpo = string.Format(@"<html>
                                                <head>
                                                    <title>AcadPos -  Sistema de Controle de Pós-Graduação</title>
                                                </head>
                                                <body style='font-family:Verdana; font-size:10pt;'>
                                                    <b>Portal de Serviços - AcadPos</b><br />
                                                    <p>O AcadPos recebeu a sua solicitação de geração de nova senha.</p>
                                                    <p>Usuário:&nbsp;&nbsp;<b>{0}</b><br />Senha:&nbsp;&nbsp;<b>{1}</b></p>
                                                    <p>Para sua maior segurança, é recomendável que a sua senha seja alterada o mais breve
                                                       possível.</p>
                                                    <br />
                                                    <br />
                                                 </body>
                                                </html>", PasswordRecovery1.UserName, pSenha);

                if (TrustX.IO.Suporte.EnviarEmail(user.Email, "Solicitação de senha", corpo, string.Empty))
                    msg = " Sua senha foi recuperada com sucesso. Você irá receber um email com sua senha de acesso!";
                else
                    msg = " Não foi possivel recuperar sua senha. Tente mais tarde!";

                Session["msg"] = msg;

                Response.Redirect("~/login.aspx");
            }
            catch (Exception)
            {
                throw;
            }
        }
    }
}